Plc with integrated industrial power system management capabilities

ABSTRACT

Systems, methods, and devices are disclosed herein for the integrated design and deployment of process control logic and power control logic in the context of industrial automation environments. In an implementation, a programmable logic controller executes process and power control logic to control an industrial automation process. The programmable logic controller transmits power control instructions to a power control module on the network of the electrical subsystem of the industrial automation process according to the power control logic. The power and process control logic executed by the programmable logic controller are designed in an integrated design environment. The programmable logic controller polls the power control module for information about the electrical devices on the network, then transmits this information to the integrated design environment which populates application for use in designing the power control logic.

CROSS-REFERENCE TO RELATED APPLICATIONS

The present application claims priority to U.S. Provisional PatentApplication No. 63/276,265, “INTEGRATED PROCESS AND POWER CONTROL FORINDUSTRIAL AUTOMATION ENVIRONMENTS,” filed Nov. 5, 2021, which is herebyincorporated herein by reference in its entirety.

TECHNICAL FIELD

Various implementations disclosed herein relate to industrial automationtechnology, and, to the dynamic discovery, visualization, andintegration and control of electrical assets.

TECHNICAL BACKGROUND

Industrial automation processes involve multiple interconnected andinter-operational devices and machinery that perform many manufacturingfunctions such as raw material handling, fabrication tasks, qualitycontrol testing, and packaging. The interoperability of these multipledevices relies on automation technology to coordinate the processes andto provide engineers and plant managers with production data andmonitoring capabilities.

Central to controlling an industrial automation process is theindustrial controller or programmable logic controller (PLC) which usesprocess logic to control the automation process. The PLC ofteninterfaces with human-machine interface (HMI) tools which provide plantpersonnel with access to various aspects of the operation includingmachine health, alarm status, operator feedback, electrical ormechanical load, and the like. HMIs connect to industrial controllers toobtain real-time data associated with a process and may communicateinstructions to the controllers.

The PLC also interfaces with a design computer by which industrialengineers design and upload to the PLC process logic to control themanufacturing devices of the automation process. The process logicexecuted by a PLC may be developed within the context of a developmentenvironment that allows an industrial engineer to program a controlstrategy for a process. The development environment may also includetools for designing HMI views. The process logic, when deployed to acontroller, functions to direct the machine elements that ultimatelyperform an industrial process, while taking in data from sensors andsupplying information to HMIs.

Most industrial automation environments also include a power controlplane associated with the electrical subsystem of the environment.Separate tools are used to develop logic for implementing a powercontrol strategy, which can then be deployed to management nodesconnected to circuit breakers, switches, and other intelligent deviceson a power network. Such logic governs the order in which load is shedin the event of power fluctuations or failures.

Overview

Systems, methods, and devices are disclosed herein for the integrateddesign and deployment of process control logic and power control logicin the context of industrial automation environments. In animplementation a computer displays, in an integrated design environment,representations of process control logic for controlling manufacturingdevices an industrial automation process and of power control logic forcontrolling electrical devices in the industrial automation process. Thecomputer further deploys the process control logic and the power controllogic to a programmable logic controller (PLC) that controls theindustrial automation process.

In an implementation of the technology, a programmable logic controllerexecutes process control logic to control manufacturing devicesassociated with an industrial automation process and executes powercontrol logic to control electrical devices associated with theindustrial automation process.

In another implementation of the technology, a power control modulereceives data from electrical devices in an industrial automationprocess and passes the data to a programmable logic controller thatcontrols the industrial automation process. The power control modulealso receives instructions from the programmable logic controller andcontrols the electrical devices based at least in part on theinstructions.

In another implementation of the technology, a human-machine interface(HMI) device displays objects corresponding to manufacturing devicesassociated with the industrial automation process and to electricaldevices associated with the industrial automation process; receives userinput with respect to the second objects; and communicates the userinput to a programmable logic controller that controls the industrialautomation process.

In yet another implementation of the present technology, an industrialautomation control system comprises a programmable logic controller(PLC) and a power control module. The PLC executes process control logicto control manufacturing devices associated with an industrialautomation process and executes power control logic to generateinstructions for managing electrical devices associated with theindustrial automation process. The power control module controls theelectrical devices based at least in part on the instructions generatedby the programmable logic controller.

This Overview is provided to introduce a selection of concepts in asimplified form that are further described below in the DetailedDescription. This Overview is not intended to identify key features oressential features of the claimed subject matter, nor is it intended tobe used as an aid in determining the scope of the claimed subjectmatter.

BRIEF DESCRIPTION OF THE DRAWINGS

Many aspects of the disclosure can be better understood with referenceto the following drawings. The components in the drawings are notnecessarily drawn to scale. Moreover, in the drawings, like referencenumerals designate corresponding parts throughout the several views.While several embodiments are described in connection with thesedrawings, the disclosure is not limited to the embodiments disclosedherein. On the contrary, the intent is to cover all alternatives,modifications, and equivalents.

FIG. 1 illustrates a control architecture for an industrial automationprocess in an implementation.

FIG. 2 illustrates a workflow for operating a PLC in an industrialautomation process in an implementation.

FIG. 3 illustrates a control architecture for an industrial automationprocess in an implementation.

FIG. 4A illustrates a design and control architecture for an IAP in animplementation.

FIG. 4B illustrates a control architecture and process for designing aload-shedding schema of an IAP in an implementation.

FIG. 4C illustrates a control architecture and a load-shedding operationof an IAP in an implementation.

FIG. 4D illustrates a control architecture a load-shedding operationinvolving multiple breakers of an IAP in an implementation.

FIG. 5A illustrates a workflow of a design computer of an IAP in animplementation.

FIG. 5B illustrates a workflow of a programmable logic controller of anIAP in an implementation.

FIG. 5C illustrates a workflow of a power control module of an IAP in animplementation.

FIG. 5D illustrates a workflow of a human-machine interface of an IAP inan implementation.

FIG. 6A illustrates a workflow for a load-shedding operation of an IAPin an implementation.

FIG. 6B illustrates a workflow for a load-shedding operation involvingmultiple breakers of an IAP in an implementation.

FIG. 7 illustrates a workflow for a load-shedding operation involvingmultiple electrical devices of an IAP in an implementation.

FIG. 8 illustrates a SCADA system architecture view of the userinterface of an IAP in an implementation.

FIG. 9 illustrates a user interface design view of an integrated powercontrol system of an IAP in an implementation.

FIG. 10 illustrates a user interface view of a load shed table afterautomatic discovery and population in an implementation.

FIG. 11 illustrates a user interface view of a load shed priority tablefor a control system of a large-scale IAP in an implementation.

FIG. 12 illustrates a user interface view of a Main-Tie-Main controlschema of an IAP design and control system in an implementation.

FIG. 13A illustrates a user interface view of a control systemprogramming environment in an implementation.

FIG. 13B illustrates a user interface view of transition control schemasfor Main-Tie-Main breaker configurations in a control system programmingenvironment in an implementation.

FIG. 14 illustrates user interface views of windows of device propertiesin a control system of an IAP in an implementation.

FIG. 15 illustrates a representation of an electrical meteringprogramming object of a design and control system for an IAP in animplementation.

FIG. 16 illustrates a representation of a circuit breaker programmingobject of a design and control system for an IAP in an implementation.

FIG. 17 illustrates a representation of an electrical load programmingobject of a design and control system for an IAP in an implementation.

FIG. 18 illustrates a representation of a load-shed programming objectof a design and control system for an IAP in an implementation.

FIG. 19 illustrates a representation of an open transition Main-Tie-Maincontrol schema of a design and control system for an IAP in animplementation.

FIG. 20 illustrates a representation of a closed transitionMain-Tie-Main control schema of a design and control system for an IAPin an implementation.

FIG. 21 illustrates a channel configuration between a programmable logiccontroller and a power control device in an IAP control system in animplementation.

FIG. 22 illustrates a workflow for sequencing data packets transmittedacross a high-speed CIP channel of an IAP control system in animplementation

FIG. 23 illustrates an implementation of sequencing data packetstransmitted across a high-speed CIP channel for an IAP control system inan implementation.

FIG. 24 illustrates an implementation of transmitting sequenced datapackets across a high-speed CIP channel for an IAP control system in animplementation.

FIG. 25 illustrates a computing system for a design and control systemof an IAP in an implementation.

The drawings have not necessarily been drawn to scale. Similarly, somecomponents and/or operations may be separated into different blocks orcombined into a single block for the purposes of discussion of some ofthe implementations of the present technology. Moreover, while thetechnology is amenable to various modifications and alternative forms,specific implementations have been shown by way of example in thedrawings and are described in detail below. The intention, however, isnot to limit the technology to the particular implementations described.On the contrary, the technology is intended to cover all modifications,equivalents, and alternatives falling within the scope of the technologyas defined by the appended claims.

DETAILED DESCRIPTION

In complex industrial manufacturing and processing environments, processcontrol is managed by industrial automation technology. In a typicalprocess automation control system, multiple industrial devices ormachinery are connected to a programmable controller which is programmedto monitor and control the system. The controller monitors informationabout the devices concerning a variety of operational characteristics,such as operating speed, temperature and/or pressure data, powerconsumption, and the like, which are pertinent to the device- andprocess-level operation. Such programmable controllers can be programmedto control, for example, the start-up and shut-down sequences ofmultiple interconnected devices in an industrial process and can respondto contingent or urgent situations based on programmed control logic.

A key subsystem of an industrial process is the electrical networkconnecting the industrial devices or loads and on-site or off-site powersources. These industrial devices or loads are connected to theelectrical network through dedicated circuit breakers. As the automatedprocess is in operation, if there is a catastrophic electrical eventsuch as a ground fault, immediate intervention would be required.However, typical programmable controllers lack the programming tocontrol the electrical power subsystem as well as the ability to providea high-speed response. This creates a fragmented situation of having twodistinct control environments for an industrial automation process, onefor process control and another for power control. Further, powercontrol programming for handling these responsibilities is typicallydistinct in design and in operation from process control systems, aretypically implemented in a different device from a programmablecontroller and must be manually configured.

The present technology includes an automation control system wherebypower control programming is integrated into process control software.The automation technology allows a control engineer to design powercontrol logic which the controller may implement for power control alongwith the process control as the industrial automation process is inoperation. The power control logic can include programs designed, forexample, for open or closed transitions for main-tie-main breakerredundancy configurations, for high-speed load shedding operations, andfor running simulations of power control programs.

The automation technology also obviates the need for a control engineerto physically gather electrical device data from multiple assets (incomplex manufacturing environments, such devices can number in thehundreds), and manually upload such data into a control program;instead, the automation technology automatically discovers allelectrical devices on the electrical network and populates the designsoftware with the devices as well as device attributes or propertieswhich the control engineer can use for control programs. The automationtechnology may also provide the programmable logic controller with theability to respond at high-speed to catastrophic or imminentlycatastrophic electrical events. The automation technology may also allowplant or factory personnel to control not only the automated process butalso the power to electrical devices in the process via human-machineinterface devices, such as wireless tablets, from locations remote fromthose devices. And, just as a process control system can be visuallydisplayed on devices remote from the plant or factory floor that areconnected by an IT network to the programmable logic controllers, sotoo, can the power control system be displayed on remote devices.

For a programmable logic controller to provide a high-speed response inthe event of an electrical event, the automation technology furtherprovides channel prioritization whereby the programmable logiccontroller has both low-speed and high-speed channels by which tocommunicate with an electrical power control unit. In the channelprioritization technology, low priority tasks are allocated to low-speedasynchronous channels, while high-priority, mission-critical tasks arededicated to high-speed synchronous channels. In an implementation ofthe present technology, the low-priority tasks such as transmittingtelemetry data and other housekeeping activities are handled by theasynchronous channels and occur at regular intervals, whilehigh-priority control activities triggered by a change of state of adevice in the IAP are handled by the synchronous channels. Becauseinformation received by the controller from multiple devices in the IAPmay arrive at the controller out of the order in which they were sent,the controller must sequence the information before transmitting theinformation to the power control module or storing the information in acontroller data table. Because reading a 64-bit timestamp can consumeprecious milliseconds in an urgent situation, the sequencing informationprovided by the controller is in the form of integer values which arefaster for the power control module to process.

Turning now to the Figures, FIG. 1 illustrates a control systemarchitecture of IAP 120 in an implementation. IAP 120 comprises one ormore manufacturing devices 122 and one or more electrical devices 124.IAP 120 may constitute a process for manufacturing goods but may alsocomprise processes occurring within a utility plant (e.g., a nuclearpower plant) or research or laboratory facility (e.g., a sample testingor processing facility). Manufacturing devices 122 comprise factory orindustrial machinery or manufacturing equipment such as conveyor beltsor other conveyance mechanisms, robotic devices or other automated orprogrammable devices, packaging devices including boxing, capping, andsealing equipment, processing equipment, mixers, filling stations,quality control equipment, and other devices associated withmanufacturing or other industrial processes. Electrical devices 124typically comprise intelligent electrical devices coupled tomanufacturing devices 122. Intelligent electrical devices are deviceswhich can receive commands and send data including status and meteringdata across a network. For example, electrical devices 124 provideremote access to breaker status, breaker control, and electricalmetering data. Electrical devices 124 may be stand-alone devices throughwhich manufacturing devices 122 connect to the electrical network, orthey may be integrated into manufacturing devices 122. Each ofelectrical devices 124 may be coupled to a single manufacturing device122 or it may be connected to multiple such devices.

In a typical implementation, electrical devices 124 connect to PLC 110through power control module or PCM 130. PCM 130 receives and executespower control commands from PLC 110 according to power control logic 114of PLC 110. The power control commands may be triggered by eventsoccurring on IAP 120 according to power control logic 114 or may beinstigated by plant personnel through computing devices in communicationwith PLC 110. Plant personnel may monitor and control the electricalnetwork of IAP 120 using computing devices in communication with PLC 110as it executes power control logic 114. These computing devices mayinclude mobile computing devices such as tablet computers, smartphones,or wearable computing devices, or laptops or desktop computers operatinga human-machine interface (HMI) which receive data concerning electricaldevices 124 and which transmit power control commands to PLC 110 forsubsequent execution according power control logic 114.

Manufacturing devices 122 and electrical devices 124 are controlled byPLC 110 which comprises process control logic 112 and power controllogic 114. Process control logic 112 of PLC 110 controls the automatedand coordinated operation of manufacturing devices 122 of IAP 120.Process control logic 112 may be designed using any number ofprogramming tools in a design environment such as text-based coding,functional block diagrams, ladder logic, graphics-based programming, orother types of coding interfaces. Process control logic may be designedor programmed on a design computer or other computing apparatus, thentransmitted or uploaded to PLC 110. Alternatively, process control logic112 may implemented with a system of hardware connections in the PLC orin programmable PLC modules by which a PLC can be upgraded to add morecontrol capacity as its industrial automation process grows insophistication.

In a similar fashion, power control logic 114 for controlling electricaldevices 124 of IAP 120 may be designed using the programming tools of adesign environment such as text-based coding, functional block diagrams,ladder logic, graphics-based programming, or other coding interfaces.Power control logic may be designed or programmed in an integrateddesign environment operating on a design computer, then transmitted oruploaded to PLC 110. Power control logic 114 comprises power controlschemas which provide for programmatic or automated operation ofelectrical devices 124 under normal or other circumstances. For example,power control logic 114 may comprise open or closed transitions formain-tie-main schemas, where an electrical source is to be taken on- oroff-line and its electrical loads must be transitioned to or from asecond source. Power control logic 114 may also comprise load-sheddingoperations for situations where the available power drops and loads mustbe taken off-line in a controlled manner or, alternatively,preferentially selecting less critical equipment to be taken off-line toensure that more critical pieces of equipment can continue to operate.Load-shedding operations may also be programmed for routine maintenanceoperations allowing subsets of manufacturing devices 122 to be takenoff-line or on-line in a controlled manner. Because the need to shedloads can occur for a variety of reasons both routine and unexpected,power control logic 114 may comprise multiple load-shedding schemas,such as taking equipment off-line in the event of a sharp decline inavailable power, or more simply taking a filling station off-line when aconveyor belt reports an anomaly, for example. Power control logic 114may also comprise the monitoring and notification of and controlledresponse to the detection of anomalous behavior of any of manufacturingdevices 122 or associated electrical devices 124. For example, in theevent of an electrical short occurring at a manufacturing device 122 oron an electrical circuit powering a subset of manufacturing devices 122,power control logic 114 may be designed to provide a high-speed responsecomprising tripping one or more breakers of the relevant device(s) orcircuit, alerting plant personnel to the anomalous behavior andresponse, and slowing or pausing the other manufacturing devices of IAP120 until the situation is resolved.

PLC 110 controls electrical devices 124 by sending power controlcommands to PCM 130 over one or more data channels in an implementation.These data channels support synchronous or asynchronous transmissions.Because serious damage arising from an anomaly such a ground fault canhappen in just a few milliseconds, notifications of and responses tosuch events may be prioritized to occur over the higher-speedsynchronous channels connecting PLC 110 to PCM 130 rather than overlower-speed asynchronous channels. Conversely, routine operations suchas taking manufacturing devices off-line at the end of the workday canbe assigned to lower-speed asynchronous channels running between PLC 110and PCM 130. PCM 130 communicates with electrical devices 124 typicallyusing communications protocol IEC 61850. In this way, automated responseto emergent situations obviates the need for timely human intervention,making plant operations safer. In an implementation, PLC 120 may beconnected to multiple power control modules, with power control logic122 controlling IEDs of the multiple power control modules. In analternative implementation, PCM 130 may communicate with or receivecommands from multiple PLCs.

FIG. 2 illustrates a workflow for controlling an industrial automationprocess by a programmable logic controller in an implementation. Theoperations of FIG. 2 are discussed in the context of the elements ofFIG. 1 , although other elements discussed herein can instead beemployed. IAP 120 comprising one or more manufacturing devices 122 andelectrical devices 124 is controlled by PLC 110 executing processcontrol logic 112 and power control logic 114. Process control logic 112is central to the process control plane for the operation ofmanufacturing devices 122, such as controlling the speed of variousmanufacturing devices to ensure IAP 120 operates smoothly andcontinuously (step 210). Similarly, power control logic 114 is centralto the power control plane of IAP 120, which is to say that it controlsthe network of electrical devices 124 of IAP 120, each of which isassociated with one or more of manufacturing devices 122 (step 220).Power control logic 114 may comprise schemas for various modes ofoperating the electrical device network of IAP 120. These schemas maycontrol normal operation of IAP 120 under nominal conditions, or theymay be triggered upon specific events. These schemas may includeload-shedding operations triggered by routine plant procedures orabnormal events, or open or closed transitions for main-tie-main powerconfigurations.

In an implementation, a designer such as a plant engineer programsprocess control logic 112 and power control logic 114 on a computerrunning an integrated design environment for designing and programmingpower and process control logic. The integrated design environment mayuse programming interfaces such as text-based coding, functional blockdiagrams, ladder logic, or other graphics-based coding interfaces todesign, program, and test the power and process control logic. Theintegrated design environment provides the ability to run simulations totest and then upload the logic to PLC 110 for execution at run time. Theintegrated design environment also provides the ability to design,program, and upload a human-machine interface (HMI) to computing devicesin communication with PLC 110. With HMI-enabled devices, plant personnelcan monitor and control manufacturing devices 122 and electrical devices124 on IAP 120 from locations throughout the plant. PLC 110 may alsoreceive and execute power control commands received from HMI-enableddevices. PLC 110 transmits power control commands according to powercontrol logic 114 to one or more of electrical devices 124 via PCM 130.

FIG. 3 provides a broad overview 300 of the control system architectureof an industrial automation process in an implementation. Industrialautomation process (IAP) 302 includes process assets 306 and intelligentelectrical devices 304. Process assets 306 include factory or industrialmachinery or manufacturing equipment such as conveyor belts, roboticdevices, packaging devices, processing equipment, mixers, fillingstations, quality control devices, etc. Intelligent electrical devices(IEDs) 304 include circuit breakers which connect the assets to theelectrical network of the plant, and which provide breaker control(e.g., opening or closing a breaker) as well as electrical metering datawhich may be accessible by remotely located control equipment orcomputing devices. These breakers may be stand-alone devices throughwhich an asset connects to the electrical network, or they may beintegrated into the devices. Process assets 306 and IEDs 304 of IAP 302are connected to control environment 308 which includes components suchas programmable logic controller 310, power control module 312, and oneor more HMI devices 314. Within control environment 308, thesecomponents may be interconnected, with power control module 312 sendinginformation about IAP 302 components to PLC 310 and receiving process orpower control commands from PLC 310. The operation of controlenvironment 308 is designed on computer 316 which provides controlsoftware by which a control engineer can program process and powercontrol logic, can deploy those programs to control environment 308hardware, and can receive information about process assets 306 and IEDs304 for active control or monitoring.

In FIG. 4A, view 400 illustrates an exemplary implementation of thecontrol architecture of IAP 401. IAP 401 comprises various devices orloads: in canning plant, for example devices 402 may be a fillingstation, a capping station, a labeling station, and so on to the nthload which may be a box sealing machine. Each load or device 402 through405 is connected to the electrical network of IAP 401 throughcorresponding circuit breakers 406 through 409. These breakers areconnected to power control module 420 which regularly interrogatesbreakers 406 through 409 on the electrical network to receive electricaldata such as current, voltage, frequency, and breaker status, and towhich power control module 420 can issue commands, such as opening,closing, resetting, or disabling a breaker. In an implementation of thetechnology, power control module 420 communicates with breakers 406through 409 over Ethernet lines using the IEC 61850 communicationsstandard.

Power control module 420 is further operatively coupled to controller422 which receives and stores control programming for power control andfor process control. Controller 422 receives electrical deviceinformation from power control module 420 and transmits power controlcommands to any of breakers 406 through 409 through power control module420. Controller 422 receives load information and sends process controlcommands to loads 402 through 405 over control network 428. As a centralpoint of command and control over IAP 401 power and process, controller422 can provide information to remote devices such as HMIs 426 or to adata storage cloud 436, providing a means for access to controlleroperations, for example, by enterprise-level computer systems.

Controller 422 connects to computer 424 containing control designsoftware. This control software is the means by which a control engineercan design control programs for an IAP and for its electrical system.View 430 is an exemplary view created by the control software of theelectrical network diagram of IAP 406 comprising breakers 406-409 ofloads 402-405 and displaying the status of the breakers (e.g., open orclosed) as well as breaker parameters such as a device name and powerdrawn or current drawn. In this view, a control engineer can monitor theelectrical system and can issue commands to breakers 406-409 displayedin that view. View 432 is an exemplary view of breakers 406-409 of IAP401 that have been automatically discovered by the control softwarealong showing breaker name, status, and shed priority. In this exemplaryimplementation, breakers 406-409 are listed in a table in order of shedpriority from highest priority to lowest, where in the event of anemergency high-speed load-shed operation, the breaker of breakers406-409 with shed priority of “1” will be shed first, and shedding willcontinue until the power consumption of IAP 401 falls below theavailable power, also known as the “spinning reserve.” View 434 is anexemplary view of a functional block diagram program in an integrateddesign environment by which a control engineer programs process controllogic and power control logic. After programming the control logic, theprogram is deployed to controller 422 to control IAP 401.

In FIG. 4B, IAP 401 is shown in architectural view 440 during the designphase of the integrated power control system. In step A, computer 424queries controller 422 for a list of breakers on IAP 401's electricalnetwork along with breaker information including breaker identifiers,status, power consumption, shed priority, trip coil status, and thelike. In step B, controller 422 interrogates power control module 420for breaker information. In step C, power control module 420 transmitsbreaker information to controller 422, which in step D is transmitted tocomputer 424. Computer 424 receives this information and populates view432 with a list of breakers 406-409 along with identifiers, status, andshed priority. The control engineer in step F can monitor and/orre-assign shed priorities of the breakers as the engineer deemsappropriate for a high-speed load-shedding operation. For example, in asituation where available power precipitously declines, the engineer mayassign higher priority to more valuable equipment if the loss of ordamage to that equipment would be of greater consequence to plantoperations, or alternatively, the engineer may assign higher priority todevices of lesser importance so that more important devices can continueto operate. In step G, once the programming is complete, the computerdeploys the control program to controller 422.

FIG. 4C illustrates an exemplary architectural view 460 of IAP 401 asIAP 401 is controlled by controller 422 when an electrical ground faultoccurs at load 402 in IAP 401. An electrical current sensor of breaker406 detects and transmits current data to power controller module 420.Power control module 420 sends the data to controller 422 whichdetermines that a fault is occurring at breaker 406. Controller 422commands power control module 420 to trip or open breaker 406,effectively taking load 402 off-line. Controller 422 also displays thefault information as well as breaker status information to computer 424,to remote HMI devices 432, and to enterprise-level devices via cloudstorage 436.

FIG. 4D illustrates an exemplary architectural view 480 of IAP 401 asIAP 401 is under control of controller 422. A control engineer hasassigned shed priorities to breakers 406-409 such that breaker 407 has ashed priority of “1”; breaker 408 has a shed priority of “2”; andbreaker 406 has a shed priority of “3.” After the control program isdeployed to and runs on controller 422, the engineer then arms oractivates a load-shedding program of the control program. Next, as IAP401 is operating under the control of the control program, a precipitousdrop in grid power 482 occurs resulting in the power consumption of IAP401 exceeding the spinning reserve by 75 kW. Controller 422 detects thetotal power consumption of IAP 401 and the spinning reserve, then runsthe load-shedding algorithm. The load-shedding algorithm is programmedto shed 125% of the excess power consumption or, in this example, about94 kW. Controller 422 commands power control module 420 to trip breaker407 for which load 403 is consuming 50 kW. Controller then commandspower control module 420 to trip breaker 408 for which load 404 isconsuming 70 kW. At this point, 120 kW have been shed, and powerconsumption of IAP 401 is now less than the spinning reserve. Controller422 transmits the status of IAP 401 to computer 424 and remote HMIdevices 426.

Turning now to the workflow diagrams, FIG. 5A illustrates workflow 500for operating a computer during control software programming in animplementation. In 502, the computer running an integrated designenvironment for designing power and process control of an IAP displays arepresentation of process control logic. In 504, the computer displays arepresentation of power control logic. These representations may befunctional block diagrams, a ladder logic diagram, a text-based program,or some other software programming environment. It may be appreciated bythose knowledgeable in the field that step 504 can occur before step502. In step 506, the process control logic and the power control logicare deployed to a programmable logic controller.

FIG. 5B illustrates exemplary workflow 520 of a programmable logiccontroller during TAP operation. In step 522, the programmable logiccontroller operatively coupled to the manufacturing devices of the TAPexecutes process control logic to control those devices. In step 524,the programmable logic controller executes power control logic tocontrol the electrical devices of the TAP. It may be appreciated bythose knowledgeable in the field that step 524 can occur before orconcurrently with step 522.

FIG. 5C illustrates exemplary workflow 540 of a power control moduleduring TAP operation, where a programmable logic controller isoperatively coupled to the power control module which is furtherconnected to the network of TAP electrical devices. In step 542, thepower control module receives data from the electrical devices of theTAP concerning the operation of those devices, such as status andmetering data. In step 544, the power control module passes the data tothe programmable logic controller. In step 546, the power control modulereceives instructions such as power control commands from theprogrammable logic controller. In step 548, the power control moduleexecutes power control commands to effect control of the electricaldevices based on those instructions. In an implementation of thetechnology, communication with the power control module by theprogrammable logic controller and the devices may be governed by the IEC61850 communications protocol.

FIG. 5D is an exemplary workflow of an HMI device during TAP operation,where the HMI device communicates with a programmable logic controllerin an implementation. In step 562, the HMI displays objectscorresponding to the manufacturing devices of the TAP. In step 564, theHMI displays objects corresponding to the electrical devices of the TAP.It may be appreciated by those with skilled in the field that step 564can occur before step 562. The objects may be displayed as graphicalobjects on a user interface such as on a touchscreen display of a tabletcomputing device. In step 566, the HMI receives input with respect tothe objects corresponding to the electrical devices of the TAP from auser, such as control engineer or plant manager, and in step 568, theHMI transmits that input to the programmable logic controller.

FIG. 6A is an exemplary workflow of an TAP during normal operation, whena breaker fault occurs, for example, an electrical short. In step 602,the power control module receives sensor data from a current sensor of abreaker such as breaker 406 shown in FIGS. 4A-4D. In step 604, the powercontrol module transmits the current data to a controller to which it isoperatively coupled. In an implementation of the technology, thecontroller may be a programmable logic controller. In step 606, thecontroller, running a power control program, determines that breaker 406is drawing more current than its programmed maximum allowable current.In step 608, the PLC commands the power control module to trip openbreaker 406. In step 610, the power control module trips open breaker406. In steps 612 and 614 respectively, the controller transmits statusinformation concerning breaker 406 to an HMI and to a computer withwhich the PLC is communicating. In an implementation of the technology,the sequence of steps happens in about 4 milliseconds, preventing apotentially catastrophic electrical failure that could lead to damage tothe equipment coupled to breaker 406 and to a shutdown of the IAP.

FIG. 6B is an exemplary workflow of an IAP during normal operation, whena precipitous drop in available power occurs, which triggers aload-shedding operation controlled by a load-shedding algorithm of thepower control system. This drop in available power may be due to suchproblems as a grid power brown-out or an on-site generator running outof diesel fuel. In step 622, a controller coupled to the IAP receivesIAP load power consumption data and available power data. In step 624,the controller determines whether the available power is greater thanthe load power consumption. If the available power is greater, thecontroller repeats step 622 as part of regularly monitoring theelectrical system of the IAP. If, however, the available power is lessthan the load consumption, in step 626 the controller computes theoverage (that is, the amount of power consumption exceeding theavailable power). In an implementation, the calculation may include afactor that provides some margin so that the load power consumption isnot just below the available power, but sufficiently below it. Forexample, the load-shedding algorithm may include a factor of 25%,meaning that the amount of load to shed must be at least 125% of theoverage. In step 628, the controller consults the load-shedprioritization of the power control program and selects the one or moreloads that must be shed to reduce IAP power consumption. Thisprioritization may have been determined at the time the program wasdesigned, or it may have been assigned as the control program wasoperating. The controller begins with a load whose shed priority is “1,”and accumulates loads until the accumulation is greater than the amountof load to shed. In step 630, the controller commands the power controlmodule to trip open the breakers of the selected loads. In step 632, thepower control module trips open the breakers of the selected loads. Instep 634, the power control module transmits breaker status data to thecontroller. In steps 636 and 638, the controller transmits breakerstatus data to connected HMIs and computers. In some implementations ofthe technology, the controller also transmits its activities in steps622-630 to the HMIs and computers as they occur.

FIG. 7 demonstrates an exemplary workflow 700 of a load sheddingoperation as part of an integrated power control program. In step 702, auser determines which circuit breakers, such as breakers 406-409 on theelectrical network of IAP 401 (as shown in FIGS. 4A-4D), are eligiblefor shedding. In step 704, the user assigns shed priorities to the“sheddable” loads of step 702. Steps 702 and 704 may be implemented inan implementation of view 432 of FIG. 4A or FIG. 10 . As the controlprogram runs, it determines whether the load shedding program is“armed,” that is whether the load-shedding operation is ready to beactivated in the event that load power consumption exceeds availablepower. In step 708, the load shed program is armed, and the controllerchecks for power over-consumption in step 710. If an overage occurs, thecontroller, using the load-shedding algorithm, determines the first loadto shed in step 712. In step 714, a signal is sent to the breaker of thefirst load to trip open. After the signal is sent, in step 716, a reportis transmitted back to the controller that the breaker is now open. Thecontroller returns to step 710, where the controller rechecks load powerconsumption against available power, and repeats the load shedding,until the consumption falls below or sufficiently below the availablepower at which load shedding stops.

FIG. 8 is an exemplary designer view 800 of the integrated power controlof a control system created after the system automatically discovers allthe breakers that are connected to the IAP. In an implementation of thetechnology, the control system requests and receives the informationfrom controller 422 of IAP 401, which in turn receives the informationfrom power control module 420 as shown in FIGS. 4A-4D. In animplementation of the control system, a representation of the electricalnetwork is created which includes all breakers and other electricaldevices such as transformers and generators from the informationreceived from power control module 420 and stored on controller 422. Inview 800, a control system designer can select a breaker, represented bya square graphical object in the implementation shown, which displaysbreaker information such as an identifier and associated load powerconsumption, and whose color is immediately communicative of the breakerstatus (green if open, red if closed). In an implementation, the controlsystem may be programmed to label each breaker in the electrical networkwith a unique default identifier at the time the breakers are autodiscovered; these identifiers may be replaced with more convenientidentifiers by the designer. These identifiers are known in programmingparlance as GUIDs (graphical user identifiers). Upon clicking on asquare, the system presents the designer with multiple window viewscontaining properties or attributes of the breaker by which the designercan change aspects of breaker operation, for example, disabling abreaker for maintenance, or closing a breaker to bring the associateddevice online in the IAP.

FIG. 9 is an exemplary designer view 900 of the power control aspect ofa control system created after the system automatically discovers allthe breakers that are connected to the electrical network of an IAP suchas IAP 401 as shown in FIGS. 4A-4D. In this implementation, eighteenbreakers are connected to the electrical network of the IAP. Eachbreaker is represented by a square graphical object in an implementationof a view of the control system and are displayed in a row-by-columnarrangement in order of shed priority. As in view 800, variousproperties of the breakers are displayed, and clicking a square bringsup multiple window views containing more detailed information about thebreaker or its associated load. These views also provide a designer withthe ability to control aspects of breaker or load operation.

FIG. 10 is an exemplary implementation of designer view 1000 of aload-shed table populated by the control system which has automaticallydiscovered and now displays breaker information from a connectedprogrammable logic controller. In this view, the IAP comprises eighteenloads each with a corresponding circuit breaker. The breaker informationis organized according to load-shed priority, starting with shedpriority “1” for the first load to be shed in the event of, for example,an overage triggering a load-shedding operation. The list in view 1000provides the designer with breaker identification and status as well asthe ability to make breakers available or unavailable for shedding. Inan implementation of the technology, the shed status values “Shed”(meaning the load has been shed in a load-shedding operation);“Disabled” (meaning the breaker is open and the load is off-line);“Available” (meaning the load is available for shedding); and“Inhibited” (meaning the load is not available for shedding). Each listitem can be selected by the designer which then opens a new window bywhich the designer can change, for example, the breaker's identifier orshed priority.

FIG. 11 is another exemplary designer view 1100 of a load-shed table fora much larger IAP of 54 loads, each with a corresponding breaker. Thefirst eighteen breakers have shed priorities ranging from 1 to 18; theremaining loads are all set to a priority of 256, which if a sheddingoperation got that far, would mean the entire IAP was to go off-line.

FIG. 12 is an exemplary view 1200 of main-tie-main control algorithmwhich is part of the power control program. In this view, two mainbreakers, each associated with a power source, are connected to a tiebreaker, and each main breaker powers a subset of loads of the IAP. Inthis view, a designer can configure an open transition main-tie-mainalgorithm or a closed transition main-tie-main algorithm to beimplemented in the event that one of the power sources becomesavailable, providing redundancy for the system.

FIG. 13A illustrates an exemplary designer view 1300 of a programmingenvironment in the form of a functional block diagram as the integratedpower and process control system of an IAP is designed. In view 1300,each load and associated breaker along with the properties andattributes of the devices are presented in block form; each blockpresents the various properties, attributes, and inputs and outputs ofthe loads and the breakers. Control of the devices is enabled by makingconnections between the blocks. In exemplary view 1300, the functionblocks correspond to an electrical metering device providing powerconsumption data of the associated load, a breaker device providingbreaker status information, and a load-shed prioritization block for thebreaker during a load-shed operation.

FIG. 13B is another exemplary designer view 1320 of a programmingenvironment in the form of a functional block diagram during the designphase of designing the power and process control software of an IAP. Inview 1320, open and closed transition programs for a main-tie-mainarrangement of breakers is programmed for the power control aspect ofthe IAP control software.

FIG. 14 illustrates multiple windows 1400-1406 available to a controllerduring IAP operation by which the plant engineer can control a breakeron the electrical network of the IAP. In window 1400, the engineer canenable or disable shedding of the load associated with the breaker. Inwindow 1402, the engineer can configure the units used in the displayedinformation about the breaker. In window 1404, the engineer can see andchange the breaker shed status. In window 1406, the engineer can assigna new identifier or GUID to the breaker and add information about thelocation of the load, for example, in the plant.

FIG. 15 is an exemplary representation 1500 of a functional blockrepresenting an electrical metering device in a functional block diagramtype of control system programming environment. The electrical meteringdevice may be operatively coupled to a breaker on an IAP electricalnetwork. It may be appreciated that the electrical metering device maybe an integral part of the breaker or of the associated load, or it maybe a stand-alone device which interconnects with the breaker and/or theassociated load. The diagram illustrates the various inputs the blockreceives from the actual device and the various outputs available to asystem designer when configuring a power control strategy.

FIG. 16 is an exemplary representation 1600 of a functional blockrepresenting a circuit breaker in a functional block diagram type ofcontrol system programming environment. The diagram illustrates thevarious inputs the block receives from the actual breaker and thevarious outputs available to a system designer when configuring a powercontrol strategy.

FIG. 17 is an exemplary representation 1700 of a functional blockrepresenting an IAP load object in a functional block diagram type ofcontrol system programming environment. The diagram illustrates thevarious inputs the block receives from the breaker associated with theload and the various outputs available to a system designer whenconfiguring a power control strategy.

FIG. 18 is an exemplary representation 1800 of a functional blockrepresenting a load shed operation in a functional block diagram type ofcontrol system programming environment. The diagram illustrates thevarious inputs the block receives from IAP electrical network and fromthe one or more power sources of the IAP and the various outputsavailable to a system designer when configuring a power controlload-shedding strategy.

FIG. 19 is an exemplary representation 1900 of a functional blockrepresenting an open transition main-tie-main operation in a functionalblock diagram type of control system programming environment. Thediagram illustrates the various inputs the block receives from otherblocks representing main and tie breakers in the IAP electrical networkand the various outputs available to a system designer when configuringa power control open transition strategy.

FIG. 20 is an exemplary representation 2000 of a functional blockrepresenting a closed transition main-tie-main operation in a functionalblock diagram type of control system programming environment. Thediagram illustrates the various inputs the block receives from otherblocks representing main and tie breakers in the IAP electrical networkand the various outputs available to a system designer when configuringa power control closed transition strategy.

FIG. 21 is an exemplary architectural diagram 2100 of prioritizingconnections between a controller and a power control module. In thisexemplary configuration, one or more channels is configured to provide ahigh-speed synchronous CIP (Critical Infrastructure Protection)connection between the controller and the power control module by whichthe controller can issue the commands necessary for high-priority,mission-critical operations. The controller may transmit high-prioritycommands to the power control module on high-speed synchronous CIPconnection 2102 if, for example, the controller receives and detectsthat a critical change of state of a breaker in the TAP, such as aground fault. The controller can issue a command to the power controlmodule to trip open the breaker. In an implementation of the technology,the high-speed connection enables a response time on the order of 2milliseconds which is necessary to prevent potentially catastrophicelectrical events.

In addition to the high-speed, high-priority CIP connection, the controlsystem maintains low-speed asynchronous connections for non-critical“housekeeping” activities such as transmitting telemetry data ortransmitting commands received by a user operating a HMI, for example,to take a piece of equipment off-line. In an implementation of thetechnology, these low-speed connections 2104 operate according to therate packet interval (RPI), which may be programmed to operate every 100to 500 milliseconds, which is too slow for a controller to respond to anemergency situation involving the power system.

FIG. 22 illustrates an exemplary workflows 2200 and 2210 of methods usedby a power control module of an TAP to communicate with the PLC and theelectrical network of the TAP in the event of a change of state of anelectrical device on the network in an implementation. The data ormessage payload that is communicated between devices is in the form ofpackets which include value, quality, and timestamp attributes (“VQT”).In an exemplary configuration of the technology, in step 2201 ofworkflow 2200, the PCM receives data from multiple electrical deviceswhere the arrival time of the data is out of order from the time thedata was collected. In other words, due to latency in the communicationsbetween the devices and the PCM, packets of information sent to the PCMin the order of 1, 2, 3, 4 may arrive at the PCM in the order of 3, 1,2, 4. Therefore, to ensure that the PLC provides the correct command inresponse to the data, the PCM must reference the timestamp or sequencenumber of the message packets. In step 2202, the PCM determines whetherany IED values have changed. If a value has changed, in step 2203, thePCM validates the payloads of VQT data according to the sequence numberfor the TED In step 2204, the PCM sequences the message packetsaccording to the timestamp or sequence number of the packets, and instep 2205, transmits the sequenced information to the controller datatable of the PLC. In workflow 2210, the PCM receives a VQT data packetfrom the PLC. At step 2211, the PCM checks whether VQT data receivedfrom the PLC has changed. When the PCM detects that a value has changed,at step 2212, the PCM collects the VQT data and checks the sequencenumber for the IED to which the packet is directed. In step 2213, thePCM packages the packets by sequence number for the relevant IED.Referencing and packaging the VQT data in this way ensures the integrityof the data transmitted between the IED and the PLC. At step 2213, thepayload is transmitted on the 61850 network to the relevant IED. In animplementation, the power control logic assigns the transmission ofhigh-priority communications to high-speed synchronous data channelsbetween the power control module and the controller. High-prioritycommunications include, for example, data indicating a change-of-stateof an IED, an indication of anomalous behavior of an IED, or informationrelating to a load-shedding operation or to a main-tie-main transitionoperation.

FIG. 23 is an exemplary diagram 2300 of the process of sequencing thepackets of information received from multiple intelligent electricaldevices (IEDs) by the controller in an implementation. IEDs 2310transmit to PCM 2320 payloads containing VQT data along with the networkaddress of the transmitting IED and a sequence number indicating theorder or time at which the VQT was acquired. The VQT payloadstransmitted between PCM 2320 and controller 2330 are carried onhigh-speed synchronous data channels to maintain the integrity of thedata, i.e. so the transmission correctly reflects what the power controllogic of controller 2330 has determined from the incoming data from IEDs2310. PCM 2320 orders the packets according to their sequence numbersand forwards ordered packets 2325 to controller data table 2330.

FIG. 24 is an exemplary diagram 2400 of the process of reading thesequenced data of IEDs 2310 in packets 2325 from controller data table2330 by PCM 2320 which then transmits payloads 2315 containing VQT andordered sequence numbers to IEDs 2310 using the IED network addresses ofthe payloads.

FIG. 25 illustrates computing system 2502, which is representative ofthe computers and computing devices disclosed herein for providing anintegrated design environment, as well as an integrated runtimeenvironment. Examples include computing devices such as computer 316 andcomputer 424, as well as PLC 310, power control module 312, HMI 314,controller 422, power control module 420, and HMI 426. Computing system2502 is representative of any system or collection of systems with whichthe various operational architectures, processes, scenarios, andsequences disclosed herein for integrated design, development, anddeployment (and runtime) of power control in an industrial automationprocess may be employed. Computing system 2502 may be implemented as asingle apparatus, system, or device or may be implemented in adistributed manner as multiple apparatuses, systems, or devices.Computing system 2502 includes, but is not limited to, processing system2510, storage system 2504, software 2506, communication interface system2508, and user interface system 2512 (optional). Processing system 2510is operatively coupled with storage system 2504, communication interfacesystem 2507, and user interface system 2512. Computing system 2502 maybe representative of a cloud computing device, distributed computingdevice, or the like.

Processing system 2510 loads and executes software 2506 from storagesystem 2504. Software 2506 includes and implements industrial automationprogram 2514, which is representative of the application, programs,processes, methods, and environments discussed with respect to thepreceding Figures. When executed by processing system 2510, software2506 directs processing system 2510 to operate as described herein forat least the various processes, operational scenarios, and sequencesdiscussed in the foregoing implementations. Computing system 2502 mayoptionally include additional devices, features, or functionality notdiscussed for purposes of brevity.

Referring still to FIG. 25 , processing system 2510 may comprise amicro-processor and other circuitry that retrieves and executes software2506 from storage system 2504. Processing system 2510 may be implementedwithin a single processing device but may also be distributed acrossmultiple processing devices or sub-systems that cooperate in executingprogram instructions. Examples of processing system 2510 include generalpurpose central processing units, graphical processing units,application specific processors, and logic devices, as well as any othertype of processing device, combinations, or variations thereof.

Storage system 2504 may comprise any computer readable storage mediareadable by processing system 2510 and capable of storing software 2506.Storage system 2504 may include volatile and nonvolatile, removable andnon-removable media implemented in any method or technology for storageof information, such as computer readable instructions, data structures,program modules, or other data. Examples of storage media include randomaccess memory, read only memory, magnetic disks, optical disks, opticalmedia, flash memory, virtual memory and non-virtual memory, magneticcassettes, magnetic tape, magnetic disk storage or other magneticstorage devices, or any other suitable storage media. In no case is thecomputer readable storage media a propagated signal.

In addition to computer readable storage media, in some implementationsstorage system 2504 may also include computer readable communicationmedia over which at least some of software 2506 may be communicatedinternally or externally. Storage system 2504 may be implemented as asingle storage device but may also be implemented across multiplestorage devices or sub-systems co-located or distributed relative toeach other. Storage system 2504 may comprise additional elements, suchas a controller, capable of communicating with processing system 2510 orpossibly other systems.

Software 2506 (including integrated industrial automation program 2514)may be implemented in program instructions and among other functionsmay, when executed by processing system 2510, direct processing system2510 to operate as described with respect to the various operationalscenarios, sequences, and processes illustrated herein. For example,software 2506 may include program instructions for implementingintegrated power control logic as described herein, and/or for providingan integrated design environment as described herein.

In particular, the program instructions may include various componentsor modules that cooperate or otherwise interact to carry out the variousprocesses and operational scenarios described herein. The variouscomponents or modules may be embodied in compiled or interpretedinstructions, or in some other variation or combination of instructions.The various components or modules may be executed in a synchronous orasynchronous manner, serially or in parallel, in a single threadedenvironment or multi-threaded, or in accordance with any other suitableexecution paradigm, variation, or combination thereof. Software 2506 mayinclude additional processes, programs, or components, such as operatingsystem software, virtualization software, or other application software.Software 2506 may also comprise firmware or some other form ofmachine-readable processing instructions executable by processing system2510.

In general, software 2506 may, when loaded into processing system 2510and executed, transform a suitable apparatus, system, or device (ofwhich computing system 2502 is representative) overall from ageneral-purpose computing system into a special-purpose computing systemcustomized to provide integrated power control as described herein,and/or an integrated design environment. Indeed, encoding software 2506on storage system 2504 may transform the physical structure of storagesystem 2504. The specific transformation of the physical structure maydepend on various factors in different implementations of thisdescription. Examples of such factors may include, but are not limitedto, the technology used to implement the storage media of storage system2504 and whether the computer-storage media are characterized as primaryor secondary storage, as well as other factors.

For example, if the computer readable storage media are implemented assemiconductor-based memory, software 2506 may transform the physicalstate of the semiconductor memory when the program instructions areencoded therein, such as by transforming the state of transistors,capacitors, or other discrete circuit elements constituting thesemiconductor memory. A similar transformation may occur with respect tomagnetic or optical media. Other transformations of physical media arepossible without departing from the scope of the present description,with the foregoing examples provided only to facilitate the presentdiscussion.

Communication interface system 2508 may include communicationconnections and devices that allow for communication with othercomputing systems (not shown) over communication networks (not shown).Examples of connections and devices that together allow for inter-systemcommunication may include network interface cards, antennas, poweramplifiers, radiofrequency circuitry, transceivers, and othercommunication circuitry. The connections and devices may communicateover communication media to exchange communications with other computingsystems or networks of systems, such as metal, glass, air, or any othersuitable communication media. The aforementioned media, connections, anddevices are well known and need not be discussed at length here.

Communication between computing system 2502 and other computing systems(not shown), may occur over a communication network or networks and inaccordance with various communication protocols, combinations ofprotocols, or variations thereof. Examples include intranets, internets,the Internet, local area networks, wide area networks, wirelessnetworks, wired networks, virtual networks, software defined networks,data center buses and backplanes, or any other type of network,combination of networks, or variation thereof. The aforementionedcommunication networks and protocols are well known and need not bediscussed at length here.

In some implementations of the present technology, the computer orcomputing apparatus obtains a list of the intelligent electrical devicesfrom the programmable logic controller.

In some implementations of the present technology, the computingapparatus creates a visual display of the list of intelligent electricaldevices in the integrated design environment.

In some implementations of the present technology, the process controllogic is represented by functional block diagrams corresponding toassets of the industrial automation process.

In some implementations of the present technology, the power controllogic is represented by functional block diagrams corresponding to theintelligent electrical devices.

In some implementations of the present technology, the functional blockdiagrams representing the intelligent electrical devices of the powercontrol logic are displayed visually, are programmable, and havevariable settings or properties.

In some implementations of the present technology, the programmablelogic controller obtains the list of intelligent electrical devices froma power control module and passes the list to the integrated designenvironment for use in programming.

In some implementations of the present technology, the power controlmodule is represented by a functional block diagram.

In some implementations of the present technology, the functional blockdiagram of the power control module is visually displayed, isprogrammable, and has variable settings.

In some implementations of the present technology, the power controllogic comprises a load-shed strategy wherein load-shedding priorityinformation from the intelligent electrical devices is imported into theload-shed strategy.

It may be appreciated from the foregoing discussion that the disclosedtechnology provides the technical effect of allowing a control engineerto design power control logic which the controller may implement forpower control along with the process control as the automated process isin operation. The disclosed automation technology also obviates the needfor a control engineer to physically gather electrical device data andmanually upload such data into a control program. Instead, theautomation technology automatically discovers electrical devices on theelectrical network and populates the design software with the devices aswell as device attributes or properties which the control engineer canuse for control programs.

The automation technology further provides the programmable controllerwith the ability to issue commands at high speed in response tocatastrophic or imminently catastrophic electrical events. Theautomation technology may also allow plant or factory personnel tocontrol not only the automated process but also the power to electricaldevices in the process via HMI devices, such as wireless tablets, fromlocations remote from those devices. And, as a process control systemcan be visually displayed on various computing devices connected by anIT network to the programmable controller, so too can the power controlsystem be displayed on those devices, enabling engineers and other usersto conveniently monitor and control the devices on the electricalnetwork.

While the technology has been described in terms of severalimplementations, there are alterations, modifications, permutations, andsubstitute equivalents which fall within the scope of the technology.Although subsection titles have been provided to aid in the descriptionof the technology, these titles are merely illustrative and are notintended to limit the scope of the technology.

It should also be noted that there are numerous alternative ways ofimplementing the methods and apparatuses of the technology. It istherefore intended that the following appended claims be interpreted asincluding all such alterations, modifications, permutations, andsubstitute equivalents as fall within the true spirit and scope of thetechnology.

The invention claimed is:
 1. A programmable logic controller comprising:one or more computer readable storage media; one or more processorsoperatively coupled with the one or more computer readable storagemedia; and program instructions stored on the one or more computerreadable storage media, wherein the program instructions comprise:process control logic that, when executed by the one or more processors,direct the computing apparatus to control manufacturing devices of anindustrial automation process; and power control logic that, whenexecuted by the one or more processors, direct the computing apparatusto control electrical devices of the industrial automation process. 2.The programmable logic controller of claim 1, the program instructionsfurther comprising send power control instructions to a power controlmodule according to the power control logic.
 3. The programmable logiccontroller of claim 2, the program instructions further comprisingtransmit high-priority information regarding the electrical devices onone or more synchronous data channels to the power control module. 4.The programmable logic controller of claim 3, the high-priorityinformation further comprising instructions relating to one or more of:anomalous behavior of one or more of the electrical devices, a change ofstate of one or more of the electrical devices, a load-sheddingoperation, and a main-tie-main transition operation.
 5. The programmablelogic controller of claim 1, the program instructions further comprisingtransmit electrical device data to one or more remote computing devices,receive power control instructions from one or more of the one or moreremote computing devices, and execute the power control instructions. 6.The programmable logic controller of claim 2, the power control logicfurther comprising assign a shed priority to the electrical devices. 7.The programmable logic controller of claim 6, the program instructionsfurther comprising send power control instructions to the power controlmodule to shed one or more of the electrical devices according to theshed priority of the electrical devices.
 8. The programmable logiccontroller of claim 2, the power control logic further comprisingmain-tie-main transition control schemas.
 9. The programmable logiccontroller of claim 2, the program instructions further comprisingreceive electrical device data, timestamp data, and network address ofthe electrical devices from the power control module and sequenceelectrical device data, timestamp data, and network address of theelectrical devices according to the timestamp data.
 10. A method ofcontrolling an industrial automation environment, the method comprising:in a programmable logic controller, executing process control logic tocontrol manufacturing devices of an industrial automation process; andin the programmable logic controller, executing power control logic tocontrol electrical devices of the industrial automation process.
 11. Themethod of controlling the industrial automation environment of claim 10,further comprising: receiving, by the programmable logic controller,from a computing apparatus a request for information regarding theelectrical devices of the industrial automation process, and sending, bythe programmable logic controller, to the computing apparatus theinformation regarding the electrical devices of the industrialautomation process; displaying, by the computing apparatus, in anintegrated design environment, a representation of the process controllogic for controlling the manufacturing devices; displaying, by thecomputing apparatus, in the integrated design environment, arepresentation of the power control logic for controlling the electricaldevices; and deploying, by the computing apparatus, the process controllogic and the power control logic to the programmable logic controller.12. The method of controlling the industrial automation environment ofclaim 10, further comprising sending, by the programmable logiccontroller, power control instructions to a power control moduleaccording to the power control logic.
 13. The method of controlling theindustrial automation environment of claim 10, further comprisingtransmitting, by the programmable logic controller, high-priorityinstructions regarding the electrical devices on one or more synchronousdata channels.
 14. The method of controlling the industrial automationenvironment of claim 13, the high-priority instructions furthercomprising instructions relating to one or more of: anomalous behaviorof one or more of the electrical devices, a change of state of one ormore of the electrical devices, a load-shedding operation, and amain-tie-main transition operation.
 15. The method of controlling theindustrial automation environment of claim 10, further comprisingtransmitting electrical device data to one or more remote computingdevices, receiving power control instructions from one or more of theone or more remote computing devices, and executing the power controlinstructions.
 16. The method of controlling the industrial automationenvironment of claim 12, the power control logic further comprisingassigning a shed priority to the electrical devices.
 17. The method ofcontrolling the industrial automation environment of claim 16, the powercontrol instructions further comprising instructions to shed one or moreof the electrical devices according to the shed priority of theelectrical devices.
 18. The method of controlling the industrialautomation environment of claim 12, the power control instructionsfurther comprising instructions to execute a main-tie-main transitionoperation.
 19. The method of controlling the industrial automationenvironment of claim 12, further comprising receiving electrical devicedata, timestamp data, and network address of the electrical devices fromthe power control module and sequencing electrical device data,timestamp data, and network address of the electrical devices accordingto the timestamp data.
 20. One or more computer readable storage mediahaving program instructions stored thereon that, when executed by one ormore processors, direct a programmable logic controller to at least:process control logic that, when executed by the one or more processors,direct the computing apparatus to control manufacturing devices of anindustrial automation process; and power control logic that, whenexecuted by the one or more processors, direct the computing apparatusto control electrical devices of the industrial automation process.